#ifndef __LINKCIRCLEQUEUE_H_
#define __LINKCIRCLEQUEUE_H_

#include "DoubleCircleLinkList.h"

typedef struct LinkCircleQueue
{
    DClist queue;
    ElementType FrontData;
}LCQueue;

//初始化
int LCQueueInit(LCQueue* lcq);
//销毁队列
void LCQueueDestroy(LCQueue* lcq);
//打印队列
void LCQueuePrint(LCQueue* lcq);
//入队
void LCQueuePush(LCQueue* lcq, ElementType element);
//出队
ElementType* LCQueuePop(LCQueue* lcq);
//判空
int LCQueueIsEmpty(LCQueue* lcq);
//获取队首元素
ElementType LCQueueGetFront(LCQueue* lcq);
//获取队列有效元素个数
int LCQueueSize(LCQueue* lcq);

#endif